13 research outputs found

    Reducing the Barrier to Entry of Complex Robotic Software: a MoveIt! Case Study

    Full text link
    Developing robot agnostic software frameworks involves synthesizing the disparate fields of robotic theory and software engineering while simultaneously accounting for a large variability in hardware designs and control paradigms. As the capabilities of robotic software frameworks increase, the setup difficulty and learning curve for new users also increase. If the entry barriers for configuring and using the software on robots is too high, even the most powerful of frameworks are useless. A growing need exists in robotic software engineering to aid users in getting started with, and customizing, the software framework as necessary for particular robotic applications. In this paper a case study is presented for the best practices found for lowering the barrier of entry in the MoveIt! framework, an open-source tool for mobile manipulation in ROS, that allows users to 1) quickly get basic motion planning functionality with minimal initial setup, 2) automate its configuration and optimization, and 3) easily customize its components. A graphical interface that assists the user in configuring MoveIt! is the cornerstone of our approach, coupled with the use of an existing standardized robot model for input, automatically generated robot-specific configuration files, and a plugin-based architecture for extensibility. These best practices are summarized into a set of barrier to entry design principles applicable to other robotic software. The approaches for lowering the entry barrier are evaluated by usage statistics, a user survey, and compared against our design objectives for their effectiveness to users

    An Extensible Benchmarking Infrastructure for Motion Planning Algorithms

    Full text link
    Sampling-based planning algorithms are the most common probabilistically complete algorithms and are widely used on many robot platforms. Within this class of algorithms, many variants have been proposed over the last 20 years, yet there is still no characterization of which algorithms are well-suited for which classes of problems. This has motivated us to develop a benchmarking infrastructure for motion planning algorithms. It consists of three main components. First, we have created an extensive benchmarking software framework that is included with the Open Motion Planning Library (OMPL), a C++ library that contains implementations of many sampling-based algorithms. Second, we have defined extensible formats for storing benchmark results. The formats are fairly straightforward so that other planning libraries could easily produce compatible output. Finally, we have created an interactive, versatile visualization tool for compact presentation of collected benchmark data. The tool and underlying database facilitate the analysis of performance across benchmark problems and planners.Comment: Submitted to IEEE Robotics & Automation Magazine (Special Issue on Replicable and Measurable Robotics Research), 201

    Task and motion planning for mobile manipulators

    Get PDF
    This thesis introduces new concepts and algorithms that can be used to solve the simultaneous task and motion planning (STAMP) problem. Given a set of actions a robot could perform, the STAMP problem asks for a sequence of actions that takes the robot to its goal and for motion plans that correspond to the actions in that sequence. This thesis shows how to solve the STAMP problem more efficiently and obtain more robust solutions, when compared to previous work. A solution to the STAMP problem is a prerequisite for most operations complex robots such as mobile manipulators are asked to perform. Solving the STAMP problem efficiently thus expands the range of capabilities for mobile manipulators, and the increased robustness of computed solutions can improve safety. A basic sub-problem of the STAMP problem is motion planning. This thesis generalizes KPIECE, a sampling-based motion planning algorithm designed specifically for planning in high-dimensional spaces. KPIECE offers computational advantages by employing projections from the searched space to lower-dimensional Euclidean spaces for estimating exploration coverage. This thesis further develops the original KPIECE algorithm by introducing a means to automatically generate projections to lower-dimensional Euclidean spaces. KPIECE and other state-of-the-art algorithms are implemented as part the Open Motion Planning Library (OMPL), and the practical applicability of KPIECE and OMPL is demonstrated on the PR2 hardware platform. To solve the STAMP problem, this thesis introduces the concept of a task motion multigraph (TMM), a data structure that can express the ability of mobile manipulators to perform specific tasks using different hardware components. The choice of hardware components determines the state space for motion planning. An algorithm that prioritizes the state spaces for motion planning using TMMs is presented and evaluated. Experimental results show that planning times are reduced by a factor of up to six and solution paths are shortened by a factor of up to four, when considering the available planning options. Finally, an algorithm that considers uncertainty at the task planning level based on generating Markov Decision Process (MDP) problems from TMMs is introduced

    Experience-Based Planning with Sparse Roadmap Spanners

    Full text link
    We present an experienced-based planning framework called Thunder that learns to reduce computation time required to solve high-dimensional planning problems in varying environments. The approach is especially suited for large configuration spaces that include many invariant constraints, such as those found with whole body humanoid motion planning. Experiences are generated using probabilistic sampling and stored in a sparse roadmap spanner (SPARS), which provides asymptotically near-optimal coverage of the configuration space, making storing, retrieving, and repairing past experiences very efficient with respect to memory and time. The Thunder framework improves upon past experience-based planners by storing experiences in a graph rather than in individual paths, eliminating redundant information, providing more opportunities for path reuse, and providing a theoretical limit to the size of the experience graph. These properties also lead to improved handling of dynamically changing environments, reasoning about optimal paths, and reducing query resolution time. The approach is demonstrated on a 30 degrees of freedom humanoid robot and compared with the Lightning framework, an experience-based planner that uses individual paths to store past experiences. In environments with variable obstacles and stability constraints, experiments show that Thunder is on average an order of magnitude faster than Lightning and planning from scratch. Thunder also uses 98.8% less memory to store its experiences after 10,000 trials when compared to Lightning. Our framework is implemented and freely available in the Open Motion Planning Library.Comment: Submitted to ICRA 201

    Kinodynamic motion planning for high-dimensional physical systems

    No full text
    This thesis presents a kinodynamic motion planner, Kinodynamic Motion Planning by Interior-Exterior Cell Exploration ( KPIECE ), specifically designed for systems with complex dynamics, where physics-based simulation is necessary. A multiple-level grid-based discretization is used to estimate the coverage of the state space. The coverage estimates help the planner detect the less explored areas of the state space. The planner also keeps track of the boundary of the explored region of the state space and focuses exploration on the less covered parts of this boundary. Extensive experiments show KPIECE provides computational gain over state-of-the-art methods and allows solving some harder, previously unsolvable problems. A shared memory parallel implementation is presented as well. This implementation provides better speedup than an embarrassingly parallel implementation by taking advantage of the evolving multi-core technology

    Accounting for Uncertainty in Simultaneous Task and Motion Planning Using Task Motion Multigraphs

    No full text
    This paper describes an algorithm that considers uncertainty while solving the simultaneous task and motion planning (STAMP) problem. Information about uncertainty is transferred to the task planning level from the motion planning level using the concept of a task motion multigraph (TMM). TMMs were introduced in previous work to improve the efficiency of solving the STAMP problem for mobile manipulators. In this work, Markov Decision Processes are used in conjunction with TMMs to select sequences of actions that solve the STAMP problem such that the resulting solutions have higher probability of feasibility. Experimental evaluation indicates significantly improved probability of feasibility for solutions to the STAMP problem, compared to algorithms that ignore uncertainty information when selecting possible sequences of actions. At the same time, the efficiency due to TMMs is largely maintained

    A Sampling-Based Tree Planner for Systems With Complex Dynamics

    No full text
    corecore